#include <iostream>
#include <vector>
#include <queue>
#include <string>
#define null -10000
using namespace std;
int main(){
    queue<int> numbers;
    char c;
    
    c=getchar();
    string str="";
    vector<int> vec;
    while (1){
        c=getchar();
        if (c!=','&&c!=']'){
            str+=c;
        }
        else{
            if (str=="")break;
            if (str=="null")vec.push_back(null);
            else vec.push_back(stoi(str));
            str.clear();
        }
        if (c==']'){
            break;
        }
    }
    int n=vec.size();
    queue<int> input;
    queue<int> output;
    if(n!=0)input.push(vec[0]);
    int i=0;//i表示已经将第几个元素存入，下标从0开始

    /*for (int k=0;k<n;k++){
        cout<<vec[k];
    }*/
    while (input.empty()!=1){
        //printf("%d\n",i);
        int lastnumber=input.size();//记录上一行的个数lastnumber，那么下一行应当输入2倍
        int temp;
        for (int j=0;j<lastnumber;j++){
            temp=input.front();
            input.pop();
            if (i!=n-1){
                i++;
                if (vec[i]!=null){
                    input.push(vec[i]);//不记录为null的值
                }
            }
            if (i!=n-1){
                i++;
                if (vec[i]!=null){
                    input.push(vec[i]);//不记录为null的值
                }
            }   
        }
        output.push(temp);
        lastnumber=input.size();
        
        
    
    }
    cout<<'[';
    while (output.empty()!=1){
        cout<<output.front();
        output.pop();
        if (output.empty()!=1)cout<<',';
    }
    cout<<']';
    

    return 0;
}